Business Intelligence generally refers to a category of software systems and applications used to improve business enterprise decision-making and governance. These software tools provide techniques for analyzing and leveraging enterprise applications and data. They are commonly applied to financial, human resource, marketing, sales, service provision, customer, and supplier analyses. More specifically, Business Intelligence tools can include reporting and analysis tools to analyze, forecast and present information, content delivery infrastructure systems to deliver, store and manage reports and analytics, data warehousing systems to cleanse and consolidate information from disparate sources, integration tools to analyze and generate workflows based on enterprise systems, database management systems to organize, store, retrieve and manage data in databases, such as relational, Online Transaction Processing (“OLTP”) and Online Analytic Processing (“OLAP”) databases, and performance management applications to provide business metrics, dashboards, and scorecards, as well as best-practice analysis techniques for gaining business insights.
OLAP data sources and tools are a subset of BI tools. There are a number of commercially available OLAP tools, such as, for example, Business Objects Voyager™, available from Business Objects™, an SAP® company, of San Jose, Calif. OLAP tools are report generation tools and are otherwise suited to ad hoc analyses. OLAP generally refers to a technique of providing fast analysis of shared multi-dimensional information stored in a database. OLAP systems provide a multi-dimensional conceptual view of data, including full support for hierarchies and multiple hierarchies. This framework is used because it is a logical way to analyze businesses and organizations. In some OLAP tools, the data is arranged in a schema which simulates a multi-dimensional schema. The multi-dimensional schema means redundant information is stored, but it allows for users to initiate queries without the need to know how the data is organized.
OLAP is typically implemented in a multi-user client/server mode to offer consistently rapid responses to queries, regardless of database size and complexity. OLAP helps the user synthesize information through use of an OLAP server that is specifically designed to support and operate on multi-dimensional data sources. The design of the OLAP server and the structure of the data are optimized for rapid ad hoc information retrieval in any orientation, as well as for fast, flexible calculation and transformation of raw data members on formulaic relationships.
There are also known techniques for graphically portraying quantitative information. The techniques are used in the fields of statistical graphics, data visualization, and the like. A visualization is a graphic display of quantitative information produced from data in a data source (e.g., an OLAP cube, relational database). Types of visualizations include charts, tables, and maps. Visualizations can reveal insights into the relationships between data.
Commercially available tools for visualizing data include, for example, Crystal Xcelsius™, Star Tree®, Business Objects Web Intelligence®, BusinessObjects Performance Manager™, BusinessObjects Voyager™, BusinessObjects XI™, and BusinessObjects Dashboard Builder™, available from Business Objects™, an SAP® company, of San Jose, Calif. These tools include various frameworks for visualizing data, such as performance dashboards and scorecards, and allow users to see their data in multiple forms, sometimes simultaneously in a single display screen.
The data within an OLAP cube may include categorical dimensions, numerical measure dimensions, and time dimensions. A categorical dimension is a data element that categorizes each item in a data set into non-overlapping regions. A numerical measure dimension or measure includes data defined by a computation, such as a sum or average. For example, an OLAP cube of a retail store might have categorical dimensions such as Products, Customers, Suppliers, and Promotions and numerical measures such as Revenue and Profit margin. The time dimension comprises data grouped in accordance with a time metric. For example, time dimensions may include Quarter 1, Quarter 2, Quarter 3, and Quarter 4.
Multi-dimensional databases undertake to provide fast navigation and informative presentation of data inside an OLAP cube. Summary data is provided in table cells, and each cell is addressed by a set of dimensions and measures. For example, a cell addressed by (Products, Revenue, Quarter 1) would contain summary data for product revenue during the first quarter. The summary data may be in the form of a single aggregated value for the specified dimensions and measures.
Existing multi-dimensional databases, however, have limitations with regards to their ability to deliver these results. Existing multi-dimensional databases are user driven, giving little direction into effective navigation of the data therein. The problem has been further aggravated as the data volumes within OLAP cubes increases making data navigation even more complex.
A user must be able to navigate within an OLAP cube to solve business problems. For example, a user must be able to “drill-down” from one table to another to acquire more details on a specific data object. Conversely, a user must also be able to “drill-up” from one table to another to reduce the level of detail regarding the object. In doing so, it would be advantageous to insulate the user from the complexities of the underlying data sources.
Traditional methods of navigation in multi-dimensional databases include dragging dimensions of interest onto a table or crosstab and then drilling down the member hierarchies of the selected dimensions shown in the table. The user must select the member hierarchies to be drilled down, a process that can be cumbersome, inefficient and time consuming.
Accordingly, it would be desirable to provide techniques for graphically navigating a multi-dimensional database to provide fast and easy access to data in the database. In particular, it would be highly desirable to provide techniques to automatically filter a visualization to drill down on dimensions associated with a table cell selected by a user.